package com.google.code.p.restrpc.client.cluster;

import java.util.List;

import com.google.code.p.restrpc.RpcException;
import com.google.code.p.restrpc.RpcRequest;
import com.google.code.p.restrpc.RpcResponse;

/**
 * @author dz
 */
public interface FailureRecoveryStrategy {
    
    /**
     * @param context
     * @param requests
     * @return
     * @throws RpcException
     */
    public RpcResponse invoke(ClusteredRpcContext context,
                              List<RpcRequest> requests) throws RpcException;
    
}
